import numpy as np
import matplotlib.pyplot as plt

# 设置参数
sampling_rate = 100  # 采样率，每秒100个样本点
time_total = 60  # 总时间长度，单位为秒
normal_breath_db = 50 + np.random.randn(time_total * sampling_rate) * 5  # 模拟正常呼吸的分贝值
pause_duration = 5 * sampling_rate  # 假设呼吸暂停持续时间为5秒

# 创建时间轴
time_axis = np.linspace(0, time_total, time_total * sampling_rate, endpoint=False)

# 在正常呼吸中插入呼吸暂停段落（这里假设在第20秒开始有5秒的呼吸暂停）
apnea_segment_start = 20 * sampling_rate


# 绘制波形图
plt.figure(figsize=(14, 7))
plt.plot(time_axis, normal_breath_db)
plt.title('Simplified Representation of Apnea in Decibel Waveform')
plt.xlabel('Time (s)')
plt.ylabel('Decibel (dB)')
plt.ylim([-10, 60])  # 设置Y轴范围，方便查看
plt.fill_between(time_axis, normal_breath_db, where=normal_breath_db > -1000, interpolate=True, color='blue', alpha=0.3)
plt.grid(True)
plt.show()